Direct Sequence Code Division Multiple Access (DS-CDMA) systems, such as High Speed Packet Access (HSPA) services in Wideband CDMA (WCDMA) and similar packet services in CDMA2000, transmit a sequence of symbols by modulating the symbols upon a high chip-rate CDMA code. Preferably, the CDMA code is orthogonal to the codes used to transmit other symbol sequences, allowing the receiver to separate out its desired symbol sequence from the others by correlating with a particular code.
To increase data rates for a given receiver, the receiver may be assigned to receive multiple symbol sequences sent in parallel using different orthogonal codes (which may or may not have the same spreading factor). In this case, the receiver receives a sequence of symbol blocks, where each symbol block comprises a combination of two or more symbols. For example, in HSPA, the highest uplink data rate permits a receiver to receive blocks of three 16-QAM symbols sent over four chip periods.
Yet when a sequence of symbol blocks is received over a dispersive channel, destroying orthogonality between codes, intersymbol interference (ISI) results between time-successive symbol blocks and between the symbols within each symbol block. In other words, with dispersive transmission channels, a symbol within any given symbol block in a time-wise sequence of symbol blocks suffers interference arising from other symbols in the same block, and interference arising from other symbol blocks.
A similar problem occurs in non-spread systems, such as Long Term Evolution (LTE), where multiple users can be assigned the same channel resource (frequency subcarrier or time slot). ISI may also be caused by Multiple-Input Multiple-Output (MIMO) transmission, where non-orthogonal symbol sequences are sent from different antennas. In all cases, some form of interference suppression or equalization is needed.
One approach employing maximum likelihood sequence estimation (MLSE) would hypothesize all MN possible combinations of symbols in each symbol block and form metrics to determine the most likely symbol combination, where M is the number of possible values each symbol may take and N is the number of symbols in each symbol block. However, even for blocks of three 16-QAM symbols in the HSPA uplink, the 163=4096 possible symbol combinations for each symbol block renders such an approach impractical as the state-size and number of metrics to compute would be prohibitively large.
Another approach, Generalized MLSE arbitration (GMA) also referred to as Assisted Maximum Likelihood Detection (AMLD) with Single-Stage Assistance (SSA), reduces computational complexity. See U.S. patent application Ser. No. 12/035,932, which is co-owned with the instant application. In AMLD with SSA, a stage of detection assistance is performed to identify the K most likely possible symbol values for the individual symbols in each symbol block, where K<M. The sequence of symbol blocks is then detected by limiting the possible combinations of symbols hypothesized for each symbol block to those formed from the most likely possible symbol values identified in the stage of detection assistance. Thus, only KN possible combinations of symbols for a symbol block need be hypothesized when detecting the sequence of symbol blocks. In the HSPA uplink, for example, if the stage of detection assistance identifies the four most likely possible symbol values for the symbols in a symbol block, only 43=64 possible combinations need be hypothesized rather than 4096.
At higher data rates, however, these and other prior approaches nonetheless remain overly complicated. Indeed, the number symbols in a symbol block, and thereby the number of possible combinations of symbols that must be hypothesized, increases with the data rate. In the HSPA downlink, for instance, symbol blocks can consist of up to fifteen 16-QAM symbols, meaning that even the AMLD with SSA approach described in the example above must still hypothesize 415 possible combinations of symbols for each symbol block.